13
Web de datos vs. información
14
Web de información
15
Modelo de datos I: Requerimientos
Todo es un recurso: páginas web, bases de datos, ampolleta del patio, dirección de la empresa, etc.
Identificadores únicos: cada recurso tiene un único identificador
Vocabularios compartidos: predicados deben ser comunes para todos en un área
Estructura extensible y distribuída: todos pueden agregar su información y nadie debe ser dueño de toda
16
Modelo de datos: XML no es suficiente
< ?xml version=1.0 encoding=ISO-8859-1?>
< rukangma> < chaw> Aukan < /chaw>
< nguke> Peyeche < /nguke> < yall>
< pichi s=wentru> mari < /pichi>
< pichi s=wentru> epu < /pichi>
< pichi tipo=domo> regle < /pichi>
< /yall>
< /rukangma>
17
Modelo de datos: XML no es suficiente
Modelo es un árbol (no un grafo)
Hijos están ordenados
Esquemas no permiten extensibilidad distribuída
pero sobretodo:
XML modela documentos, y el mundo real no es un documento, sino una red de relaciones
(aunque no olvidemos que hay muchos documentos)
18
Modelo de datos II:la solución
Resource Description Framework (RDF)
La información es un grafo dirigido etiquetado que modela las relaciones entre objetos
Nodos: recursos
Arcos: propiedades
Las oraciones tienen de la forma:
objeto
predicado
sujeto
19
Modelo de datos III:propiedades de RDF
Expresividad: fragmento conjuntivo de la lógica de primer orden
Complejidad: tratable bajo condiciones razonables
Soporte teórico: modelo de grafos en Bases de Datos, Redes semánticas
20
Web de información: consulta
Pediatras de Santiago que atiendan
por Fonasa
?X
Fonasa
Santiago
Beaucheff
convenio
dirección
ciudad
calle
Pediatra
especialidad
21
Lenguajes de Consulta para la Web Semántica
(2000) rdfDB: basado en correspondencia de patrones simples.
(2001) SquishQL: navegación en grafo, variables para nodos en patrones, filtros.
Implementaciones: RDQL, InkLink.
(2002) RQL: enfoque funcional a la OQL, variables para nodos y arcos en patrones.
(2003) DQL: considera un grafo RDF como una base de conocimiento.
22
RDF: Sentencias sobre Sentencias (Reificación)
23
Sintaxis XML para RDF
24
Web de información:relaciones entre conceptos
25
Web de información: Ontologías
Entendimiento compartido de algún dominio de interés
Vocabulario aceptado por una comunidad amplia
Facilitan descripciones, búsqueda semántica y razonamiento
Similar a esquemas en bases de datos tradicionales pero aceptados globalmente
26
Ejemplo: Ontología para fuentes naturales de agua
Oceano
Lago
CuerpoDeAgua
Río
CorrienteDeAgua
Propiedades:
largo: Literal
desembocaEn: CuerpoDeAgua
Mar
FuenteNaturalDeAgua
Tributario
Arroyo
Vertiente
27
Modelo de datos IV: RDF Schema (RDFS)
Vocabulario para definir Ontologías
Clases, subclases y propiedades.
(Rio,rdfs:type,rdfs:class)
(Rio,rdfs:subclass,CorrienteDeAgua)
(desembocaEn,rdf:type,rdfs:property)
(desembocaEn,rdf:domain,Rio)
(desembocaEn,rdf:range,CuerpoDeAgua)
28
Inferencia usando RDFS
(Gp:) Oceano
(Gp:) Lago
(Gp:) CuerpoDeAgua
(Gp:) Río
(Gp:) CorrienteDeAgua
(Gp:) Propiedades:
longitud: Literal
desembocaEn: CuerpoDeAgua
(Gp:) Mar
(Gp:) FuenteNaturalDeAgua
(Gp:) Tributary
(Gp:) Arroyo
(Gp:) Vertiente
(Gp:) (Yangtze,rdfs:type,Río)
(Yangtze,longitud,6300 Km)
(Yangtze,desembocaEn,MarEsteChina)
(Gp:) Inferencia:
(Yangtze,rdfs:type,CorrienteDeAgua)
(Yangtze,rdf:type,FuenteNaturalDeAgua)
(MarEsteChina,rdfs:type,CuerpoDeAgua)
29
Búsqueda usando una ontología (Shoe)
Seleccionar una Ontología
Fuentes naturales de agua
Seleccionar la categoría que mejor describa el tópico de la consulta: Río
Usar propiedades de la categoría que para restringir la búsqueda
Longitud > 5000 km & desembocaEn = Lago
Ingresar los términos de la consulta
Yang
30
Seamos serios;lo anterior es utopía si no resolvemos:
Escalabilidad
Falta de integridad referencial
Autoridad distribuída
Múltiples fuentes
Diversidad de contenidos
Uso impredecible de la información
…
…
y sobretodo, operar con grafos con muchos nodos
31
Seamos serios;debemos investigar:
Grafos que modelen procesos y datos reales (redes complejas)
Bases de datos de grafos
Interfaces para visualizar grafos
Aplicaciones de marcado a gran escala
32
Web de Conocimiento
Razonamiento: Juan Pérez es pediatra,
luego atiende niños.
Prueba: credenciales de Juan Pérez + certificado de actualización + definición de pediatra
Validación: determinar si Juan Pérez es pediatra, dadas sus credenciales del Colegio Médico + certificado + etc.
33
Web de Conocimiento
Web Ontology Language (OWL)
Extiende RDFS para definir/relacionar ontologías
Posibilita un nivel avanzado de inferencia para la Web Semántica
Permite:
definir y restringir clases (conceptos).
definir y restringir propiedades.
definir relaciones entre clases.
34
OWL
Características de Propiedades
inverseOf, FunctionalProperty, InverseFunctionalProperty, TransitiveProperty, SymmetricProperty.
Igualdad/desigualdad:
equivalentClass, equivalentProperty, sameIndividualAs, differentFrom, allDifferent.
Definición de Clases:
intersectionOf, unionOf, complementOf.
Restricciones de Cardinalidad:
minCardinality, maxCardinality, cardinality
Otros…
35
Definición de Clases en OWL
Clase F: ríos que desembocan en el mar
(Gp:) Oceano
(Gp:) Lago
(Gp:) CuerpoDeAgua
(Gp:) Río
(Gp:) CorrienteDeAgua
(Gp:) Propiedades:
longitud: Literal
desembocaEn: CuerpoDeAgua
(Gp:) Mar
(Gp:) FuenteNaturalDeAgua
(Gp:) Tributary
(Gp:) Arroyo
(Gp:) Vertiente
36
Ontologías: Herramientas
RDF Instance Creator (RIC)
http://www.mindswap.org/~mhgrove/RIC/RIC
Limited OWL capabilities
OilEd:
http://oiled.man.ac.uk/
Editor for ontologies
Mostly for DAML+OIL, exports OWL but not a current representation
OWL Validator:
http://owl.bbn.com/validator/
Web-based or command-line utility
Performs basic validation of OWL file
Dumpont:
http://www.daml.org/2001/03/dumpont/
a simple class and hierarchy property viewer, which also works with OWL, e.g.,
http://www.daml.org/cgi-bin/dumpont?http://www.w3.org/2002/07/owl
OWL Ontology Validator:
http://phoebus.cs.man.ac.uk:9999/OWL/Validator
a "species validator" that checks use of OWL Lite, OWL DL, and OWL Full constructs
Euler:
http://www.agfa.com/w3c/euler/
an inference engine which has been used for a lot of the OWL Test Cases
Chimaera:
http://www.ksl.stanford.edu/software/chimaera/
Ontology evolution environment (diagnostics, merging, light editing)
Mostly for DAML+OIL, being updated to export and inport current OWL
DAML Tools Page – http://www.daml.org/tools/
37
Editores de Ontologías: Protégé 2000 (stanford Medical Info)
38
Seamos serios:
OWL es una Lógica Descriptiva
Es necesario determinar ámbitos de aplicabilidad
No es escalable como RDF
39
Aplicaciones I:Directorios y Catálogos Web
Open Directory Project (www.dmoz.org), catálogo de editores distribuídos
Openguides.org.
guía de editores distribuídos
40
Aplicaciones II: Dublin Core (dublincore.org)
Vocabulario liviano para representar metadatos sobre recursos: http://purl.org/dc/elements/1.1/
Propuesto desde la comunidad de bibliotecología.
Title, Contributor, Author/Creator, Publisher, Subject, Description, Date, Resource, Format, Resource Identifier, Language, Source, Coverage, Rights.
41
Aplicaciones II:Dublin Core, Ejemplo
42
Aplicaciones III: Redes Sociales
¿Cómo encontrar personas:
con intereses similares a los de uno?
relacionadas a alguien?
autoridades en un tópico?
etc.
Redes sociales:
Información personal en la Web semántica.
Enlaces a información personal de personas conocidas.
43
Aplicaciones III: Friendo Of A Friend, Brickley & Miller
Michael Souris
foaf:Person
mailto:mm@example.com
foaf:name
foaf:mbox
Donald Canard
foaf:Person
rdf:type
mailto:dd@example.com
foaf:mbox
rdf:type
foaf:name
foaf:knows
44
Aplicaciones III:FOAF, Ejemplo
< foaf:Person>
< foaf:name>Peter Parker< /foaf:name>
< foaf:gender>Male< /foaf:gender>
< foaf:title>Mr< /foaf:title>
< foaf:givenname>Peter< /foaf:givenname>
< foaf:family_name>Parker< /foaf:family_name>
< foaf:homepage rdf:resource="http://www.peterparker.com"/>
< foaf:weblog rdf:resource="http://www.peterparker.com/blog/"/>
< /foaf:Person>
45
Aplicaciones III: Publicación de datos FOAF
¿Cómo mis datos FOAF pueden ser conocidos por otros usuarios?
Soy conocido por alguien conocido:
Vía FOAF:knows
Publicando mi info en FOAF Bulleting Board:
Sitio con enlaces a decenas de archivos FOAF
Incluyendo en mi sitio Web un enlace a mi archivo FOAF:
< link rel="meta" type="application/rdf+xml" title="FOAF" href="foaf.rdf" />
46
Aplicaciones III:herramientas para FOAF
FOAF Explorer
Vista HTML de FOAF
FOAFNaut
Visualización de relaciones entre personas
Plink
Sitio de redes sociales
FOAFBot, Whwhwhwh
Interfaces IRC sobre FOAF
47
Aplicaciones IV:Búsqueda Semántica
Pediatras que vivan a menos de 10 cuadras de mi casa
Hoteles 3 estrellas en Viña del Mar que estén cerca del casino
Carreras del área biología en Universidad de Cauca
Nombre y dirección postal de profesores de escuelas primarias de Bogotá
48
Aplicaciones V: Consultas Avanzadas
¿Cuál es la relación entre dos personas?
Asociaciones semánticas.
¿Es esta persona autoridad en física teórica?
Ranking de objetos: PageRank, HITS.
¿Es válido documento que me envió esta persona?
Inferencia: RDFS, OWL, XML Schema.
49
Aplicaciones V:Asociaciones Semánticas (A. Seth, LSDIS, U de Georgia)
Asociaciones Semánticas:
relaciones complejas que capturan conectividad y similaridad de entidades en una base de conocimiento
50
Aplicaciones V:Ranking de Asociaciones
Consulta de asociación entre Hubwoo (compañía) y Soneri (banco) entrega 1.600 asociaciones en una BD de 800,000 entidades (sistema SWETO @ LSDIS).
Los resultados deben ser entregados a los usuarios en un orden (Ranking).
51
Aplicaciones V:Ranking de Asociaciones
Criterios Semánticos:
Contexto: si el camino pasa por regiones de interés
Especialización: caminos más/menos generales
Confianza: caminos pasan por distintas fuentes de datos
Criterios Estadísticos:
Rareza: frecuencia de la asociación
Popularidad: asociaciones que pasan por entidades muy conectadas en el grafo
Largo: caminos más/menos largos
52
Web Semántica en la U de Chile
Aplicaciones
Anuario de Departamentos de Computación (Depmark)
Integrador de RSS
Sistema Administrador de Servicios Web Semánticos
Grupo www.metadatos.cl
Blog, Wiki,
Jueves semánticos
53
Web Semántica en la U de Chile
Fundamentos
Bases de datos
Representación del Conocimiento, Lógica
Inteligencia Artificial
Lenguajes:
¿Cómo representar la info de la Web Semántica?
¿Cómo especificar la Información que buscamos?
Página anterior | Volver al principio del trabajo | Página siguiente |